package com.paradogs.framework.common.events.base;

import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import org.springframework.context.ApplicationEvent;

import java.util.UUID;

/**
 * @author: yumi
 * @date: 2023/7/31  22:00
 * @Description: TODO
 * 事件分为三种：
 * 1、内部传输（父子类接口实现）
 * 2、远程传输（SpringEvent 实现）
 * 3、待优化：网络传输（未实现）
 */
@Getter
@Setter
@ToString
public class BaseEvent extends ApplicationEvent {

    /**
     * 唯一 ID
     */
    private String id;

//    /**
//     * 创建时间，ApplicationEvent 自带
//     */
//    private LocalDateTime createTime;

    public BaseEvent(Object source) {
        super(source);
        this.id = UUID.randomUUID().toString();
    }

}
